package cn.mystyle.model.user;

import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson.annotation.JSONField;

import cn.mystyle.common.annotation.Location;
import cn.mystyle.common.bean.BaseBean;
import cn.mystyle.common.bean.PaginationBean;
import cn.mystyle.common.response.ListResponse;

/**
 * @author clark
 * 用户bean
 */
@Location(module = "userservice")
public class UserInfo extends BaseBean
{
    private static final long serialVersionUID = 2056856390773540051L;
    
    /**
     * 用户唯一编号
     */
    private Integer id;
    
    /**
     * 用户账号
     */
    private String name;
    
    /**
     * 用户邮箱
     */
    private String email;
    
    /**
     * 用户手机号
     */
    private String mobilePhone;
    
    private String password;
    
    /**
     * 性别
     */
    private Integer gender;
    
    /**
     * 上下线
     */
    private Integer state;
    
    /**
     * 审核状态
     */
    private Integer verifyState;
    
    /**
     * 分页对象
     */
    @JSONField(serialize = false)
    private PaginationBean page;
    
    public Integer getId()
    {
        return id;
    }
    
    public void setId(Integer id)
    {
        this.id = id;
    }
    
    public String getName()
    {
        return name;
    }
    
    public void setName(String name)
    {
        this.name = name;
    }
    
    public String getPassword()
    {
        return password;
    }
    
    public void setPassword(String password)
    {
        this.password = password;
    }
    
    public String getEmail()
    {
        return email;
    }
    
    public void setEmail(String email)
    {
        this.email = email;
    }
    
    public String getMobilePhone()
    {
        return mobilePhone;
    }
    
    public void setMobilePhone(String mobilePhone)
    {
        this.mobilePhone = mobilePhone;
    }
    
    public Integer getGender()
    {
        return gender;
    }
    
    public void setGender(Integer gender)
    {
        this.gender = gender;
    }
    
    public Integer getState()
    {
        return state;
    }
    
    public void setState(Integer state)
    {
        this.state = state;
    }
    
    public Integer getVerifyState()
    {
        return verifyState;
    }
    
    public void setVerifyState(Integer verifyState)
    {
        this.verifyState = verifyState;
    }
    
    public PaginationBean getPage()
    {
        return page;
    }
    
    public void setPage(PaginationBean page)
    {
        this.page = page;
    }
    
    /**
     * 查询时使用
     */
    public static TypeReference<ListResponse<UserInfo>> getTypeReference()
    {
        return new TypeReference<ListResponse<UserInfo>>()
        {
        };
    }
}
